#ifndef __DBUSZAPPYSERVER_H__
#define __DBUSZAPPYSERVER_H__

#include <QDBusAbstractAdaptor>

class DbusZappyServer : public QDBusAbstractAdaptor {
Q_OBJECT
Q_CLASSINFO("D-Bus Interface", "com.ponay.ZappyServer.DbusZappyServer")
Q_CLASSINFO("D-Bus Introspection",""
"  <interface name=\"com.ponay.ZappyServer.DbusZappyServer\">\n"
"    <property name=\"port\" type=\"q\" access=\"readwrite\"/>\n"
"    <property name=\"isSSL\" type=\"b\" access=\"read\"/>\n"
"    <property name=\"isIpv6\" type=\"b\" access=\"read\"/>\n"
"    <method name=\"start\">\n"
"    </method>\n"
"    <method name=\"stop\">\n"
"    </method>\n"
"  </interface>\n"
"")

Q_PROPERTY( quint16 port READ port WRITE setPort );

private:

public:
    DbusZappyServer( QObject *parent );
    ~DbusZappyServer( void );
    
    Q_PROPERTY(ushort port READ port WRITE setPort)
    ushort port( void ) const;
    void setPort( ushort port );
    
    Q_PROPERTY(bool isSSL READ isSSL)
    bool isSSL( void ) const;
    
    Q_PROPERTY(bool isIpv6 READ isIpv6)
    bool isIpv6( void ) const;
    
public Q_SLOTS:
    void start( void );
    void stop( void );
};

#endif // __DBUSZAPPYSERVER_H__
